package com.online.usermanagesystem.service;

import com.online.usermanagesystem.entity.Config;
import org.springframework.stereotype.Service;

/**
 * @author jhk
 * @create 2018-04-24 10:35
 */
@Service
public interface ConfigManageService {

    /**
     * 查询配置信息
     *
     * @param type  配置类型
     * @param owner 配置所有者
     * @return
     */
    Object get(String type, Integer owner);

    /**
     * 查询配置信息
     *
     * @param owner 配置所有者
     * @return
     */
    Object list(Integer owner);

    /**
     * 设置配置信息
     *
     * @param config 配置对象
     * @return 返回配置标识
     */
    Object set(Config config);

    /**
     * 删除配置信息
     *
     * @param id 配置标识
     * @return 返回操作结果
     */
    Object del(Integer id);

    /**
     * 查询配置信息
     *
     * @param type    配置类型
     * @param owner   配置所有者
     * @param section 子项
     * @return
     */
    Object jsonGet(String type, Integer owner, String section);

    /**
     * 插入配置信息
     *
     * @param id      配置标识
     * @param section 子项
     * @param data    配置信息
     * @return 返回配置标识
     */
    Object jsonSet(Integer id, String section, String data);

    /**
     * 删除配置信息
     *
     * @param id      配置标识
     * @param section 子项
     * @return 返回操作结果
     */
    Object jsonDel(Integer id, String section);
}
